diff --git a/system/helpers/download_helper.php b/system/helpers/download_helper.php
index 6cecd0d..a851e3c 100644
--- a/system/helpers/download_helper.php
+++ b/system/helpers/download_helper.php
@@ -58,7 +58,14 @@
 		$extension = end($x);
 
 		// Load the mime types
-		@include(APPPATH.'config/mimes'.EXT);
+		if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/mimes'.EXT))
+		{
+		    @include(APPPATH.'config/'.ENVIRONMENT.'/mimes'.EXT);
+		}
+		else
+		{
+			@include(APPPATH.'config/mimes'.EXT);
+		}
 
 		// Set a default mime if we can't find it
 		if ( ! isset($mimes[$extension]))
diff --git a/system/helpers/file_helper.php b/system/helpers/file_helper.php
index 9518e48..fb074e0 100644
--- a/system/helpers/file_helper.php
+++ b/system/helpers/file_helper.php
@@ -352,7 +352,16 @@
 
 		if ( ! is_array($mimes))
 		{
-			if ( ! require_once(APPPATH.'config/mimes.php'))
+			if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/mimes'.EXT))
+			{
+			    @include(APPPATH.'config/'.ENVIRONMENT.'/mimes'.EXT);
+			}
+			else
+			{
+				@include(APPPATH.'config/mimes'.EXT);
+			}
+			
+			if ( ! is_array($mimes))
 			{
 				return FALSE;
 			}
diff --git a/system/helpers/html_helper.php b/system/helpers/html_helper.php
index 68c6f59..c94c880 100644
--- a/system/helpers/html_helper.php
+++ b/system/helpers/html_helper.php
@@ -258,7 +258,16 @@
 
 		if ( ! is_array($_doctypes))
 		{
-			if ( ! require_once(APPPATH.'config/doctypes.php'))
+			if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/doctypes'.EXT))
+			{
+			    @include(APPPATH.'config/'.ENVIRONMENT.'/doctypes'.EXT);
+			}
+			else
+			{
+				@include(APPPATH.'config/doctypes'.EXT);
+			}
+			
+			if ( ! is_array($_doctypes))
 			{
 				return FALSE;
 			}
diff --git a/system/helpers/smiley_helper.php b/system/helpers/smiley_helper.php
index 463881f..6c90151 100644
--- a/system/helpers/smiley_helper.php
+++ b/system/helpers/smiley_helper.php
@@ -229,13 +229,20 @@
 {
 	function _get_smiley_array()
 	{
-		if ( ! file_exists(APPPATH.'config/smileys'.EXT))
+		if ( ! file_exists(APPPATH.'config/smileys'.EXT) AND ! file_exists(APPPATH.'config/'.ENVIRONMENT.'/smileys'.EXT))
 		{
 			return FALSE;
 		}
 
-		include(APPPATH.'config/smileys'.EXT);
-
+		if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/smileys'.EXT))
+		{
+		    include(APPPATH.'config/'.ENVIRONMENT.'/smileys'.EXT);
+		}
+		else
+		{
+			include(APPPATH.'config/smileys'.EXT);
+		}
+		
 		if ( ! isset($smileys) OR ! is_array($smileys))
 		{
 			return FALSE;
diff --git a/system/helpers/text_helper.php b/system/helpers/text_helper.php
index 96afd4c..197bcb1 100644
--- a/system/helpers/text_helper.php
+++ b/system/helpers/text_helper.php
@@ -366,12 +366,19 @@
 {
 	function convert_accented_characters($str)
 	{
-		if ( ! file_exists(APPPATH.'config/foreign_chars'.EXT))
+		if ( ! file_exists(APPPATH.'config/foreign_chars'.EXT) AND ! file_exists(APPPATH.'config/'.ENVIRONMENT.'/foreign_chars'.EXT))
 		{
 			return $str;
 		}
 
-		include APPPATH.'config/foreign_chars'.EXT;
+		if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/foreign_chars'.EXT))
+		{
+		    include APPPATH.'config/'.ENVIRONMENT.'/foreign_chars'.EXT;
+		}
+		else
+		{
+			include APPPATH.'config/foreign_chars'.EXT;
+		}
 
 		if ( ! isset($foreign_characters))
 		{
